home *** CD-ROM | disk | FTP | other *** search
-
-
-
- ddddaaaattttaaaappppiiiippppeeee((((5555)))) ddddaaaattttaaaappppiiiippppeeee((((5555))))
-
-
-
- NNNNAAAAMMMMEEEE
- datapipe - peer-to-peer data transfer between hardware devices.
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- Data pipes are dynamic connections between two hardware devices that
- support peer-to-peer data transfers. These connections are created by an
- application to process a data stream from a source device to a sink
- device. The purpose is to have minimum system impact during I/O
- operations.
-
- Data is moved in sized quanta from source to sink. Each transfer of a
- quantum of data is assumed to be atomic with respect to both drivers and
- application APIs. When data is moved at the hardware level, addresses are
- provided and data is either read or written. If a device can provide
- addresses, it is called a bus master; if a device can accept addresses,
- it is called a bus slave. A bus slave stores data in the write case or
- provides data in the read case. A device can be both a bus master or a
- bus slave. Host memory is a most common case of a bus slave.
-
- Each device has a number of common attributes that are used by the data
- pipe driver to decide whether a data pipe can be created between the two
- devices. If so, each driver (the data pipe driver, and the two pipe ends)
- will create an event queue for the pipe. Once the pipe is created, all
- key interactions with the data pipe are done by posting events to the
- event queue. Pipe events are the primary means for the setup and
- management of data pipes. Each driver within a data pipe can post an
- event into the other drivers' event queue. The application also can post
- events to a particular queue via ddddppppiiiippppeeeePPPPoooossssttttEEEEvvvveeeennnntttt((((3333xxxx)))).... When an application
- posts an event, it must specify which queue the event is posted to. Not
- every event can be posted to all queues.
-
- A set of base events must be supported by each involved device.
- Individual devices can have their own expanded set of events. The data
- structure of the base events are in <_s_y_s/_d_a_t_a_p_i_p_e__e_v_e_n_t_s._h>.
-
- Once a data pipe is created, we can make bandwidth allocation through
- priority I/O mechanism on the data pipe file descriptor (prio(5)).
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- datapipe(3X), prio(5), prio(3X)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-